package com.coderush.admin.sys.model.dto;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * PackageName com.coderush.admin.sys.model.dto
 *
 * @Author Eason
 * @Version v1.0
 * @ClassName MenuUpdateDto
 * @Date 2025/8/29
 * @Description TODO
 */
@Data
public class MenuUpdateDto {

    /**
     * 主键ID
     */
    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "主键ID不能为空")
    private Long id;

    /**
     * 菜单名称
     */
    @Schema(description = "菜单名称", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "菜单名称不能为空")
    private String menuName;

    /**
     * 排序序号
     */
    @Schema(description = "排序序号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "排序序号不能为空")
    private Integer menuSort;

    /**
     * 菜单类型:0-菜单，1-功能，2-按钮
     */
    @Schema(description = "菜单类型", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "菜单类型不能为空")
    private Integer menuType;

    /**
     * 链接-请求路径，权限标识
     */
    @Schema(description = "链接-请求路径，权限标识")
    private String menuHref;

    /**
     * 请求方式： GET,POST,PUT,DELETE
     */
    @Schema(description = "请求方式")
    private String reqMethod;

    /**
     * 图标
     */
    @Schema(description = "图标")
    private String menuIcon;

    /**
     * 状态:1-可用，0-停用
     */
    @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "状态不能为空")
    private Integer menuStatus;


}